﻿using System;
using Labthink.PCSoft.UniversalHost4.Instrument.Forms;
using Labthink.PCSoft.UniversalHost4.UserControls;
using Labthink.PCSoft.UniversalHost4.Utility;

namespace Labthink.PCSoft.UniversalHost4
{
    public class States
    {
        private static readonly Lazy<States> Lazy = new Lazy<States>(() => new States());

        public static States Instance => Lazy.Value;

        public MainWindow MainWindow { get; set; }

        public LoginControl LoginControl { get; set; }

        public Main Main { get; set; }

        public FrmParamSet FrmParamSet  { get; set; }

        public FrmSystemSet FrmSystemSet { get; set; }

        public SerialPortExtend SerialPort { get; set; }

        /// <summary>
        /// 下位机版本
        /// </summary>
        public string DeviceVersion { get; set; }

        private States()
        {
            MainWindow = new MainWindow();
            LoginControl = new LoginControl();
            Main = new Main();
            FrmSystemSet = new FrmSystemSet();
            FrmParamSet = new FrmParamSet();
        }
    }
}
